```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Redis 高可用与集群 | 技术小馆</title>
    <link rel="stylesheet" href="https://cdn.staticfile.org/font-awesome/6.4.0/css/all.min.css">
    <link rel="stylesheet" href="https://cdn.staticfile.org/tailwindcss/2.2.19/tailwind.min.css">
    <link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;700&display=swap" rel="stylesheet">
    <script src="https://cdn.jsdelivr.net/npm/mermaid@latest/dist/mermaid.min.js"></script>
    <style>
        body {
            font-family: 'Noto Sans SC', Tahoma, Arial, Roboto, "Droid Sans", "Helvetica Neue", "Droid Sans Fallback", "Heiti SC", "Hiragino Sans GB", Simsun, sans-serif;
            color: #333;
            line-height: 1.6;
        }
        h1, h2, h3, h4 {
            font-family: 'Noto Serif SC', serif;
            font-weight: 600;
        }
        .hero {
            background: linear-gradient(135deg, #3a7bd5 0%, #00d2ff 100%);
        }
        .card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
        }
        .highlight {
            position: relative;
        }
        .highlight::before {
            content: '';
            position: absolute;
            left: -8px;
            top: 0;
            height: 100%;
            width: 4px;
            background: #3a7bd5;
            border-radius: 2px;
        }
        .mermaid {
            background: white;
            border-radius: 8px;
            padding: 20px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        }
        .nav-link {
            position: relative;
        }
        .nav-link::after {
            content: '';
            position: absolute;
            bottom: -2px;
            left: 0;
            width: 0;
            height: 2px;
            background: #3a7bd5;
            transition: width 0.3s ease;
        }
        .nav-link:hover::after {
            width: 100%;
        }
    </style>
</head>
<body class="bg-gray-50">
    <!-- Navigation -->
    <nav class="bg-white shadow-sm sticky top-0 z-50">
        <div class="container mx-auto px-6 py-3 flex justify-between items-center">
            <a href="#" class="text-xl font-bold text-blue-600">Redis<span class="text-gray-700">技术指南</span></a>
            <div class="hidden md:flex space-x-8">
                <a href="#intro" class="nav-link text-gray-700 hover:text-blue-600">概述</a>
                <a href="#high-availability" class="nav-link text-gray-700 hover:text-blue-600">高可用性</a>
                <a href="#cluster" class="nav-link text-gray-700 hover:text-blue-600">集群架构</a>
                <a href="#compare" class="nav-link text-gray-700 hover:text-blue-600">对比分析</a>
                <a href="#faq" class="nav-link text-gray-700 hover:text-blue-600">常见问题</a>
            </div>
            <button class="md:hidden text-gray-700">
                <i class="fas fa-bars text-xl"></i>
            </button>
        </div>
    </nav>

    <!-- Hero Section -->
    <section class="hero text-white py-20">
        <div class="container mx-auto px-6 flex flex-col items-center text-center">
            <h1 class="text-4xl md:text-5xl font-bold mb-6">Redis 高可用与集群</h1>
            <p class="text-xl md:text-2xl max-w-3xl mb-8">构建高性能、高可用的分布式缓存系统</p>
            <div class="flex space-x-4">
                <a href="#intro" class="bg-white text-blue-600 px-6 py-3 rounded-lg font-medium hover:bg-gray-100 transition">开始探索</a>
                <a href="#faq" class="border-2 border-white px-6 py-3 rounded-lg font-medium hover:bg-white hover:text-blue-600 transition">常见问题</a>
            </div>
        </div>
    </section>

    <!-- Main Content -->
    <div class="container mx-auto px-6 py-12">
        <!-- Introduction Section -->
        <section id="intro" class="mb-20">
            <div class="flex items-center mb-8">
                <div class="w-12 h-1 bg-blue-500 mr-4"></div>
                <h2 class="text-3xl font-bold">Redis 高可用与集群的背景</h2>
            </div>
            
            <div class="grid md:grid-cols-2 gap-8 mb-12">
                <div>
                    <p class="text-lg mb-6">在现代分布式系统中，随着用户量的增加和数据量的激增，传统的单机系统往往无法满足高并发、高可用性和高可靠性的要求。尤其是对于一些关键的基础设施服务，如缓存、会话存储、消息队列等，任何的停机或数据丢失都会影响整个系统的稳定性和用户体验。</p>
                    <p class="text-lg mb-6">Redis 作为一个内存存储系统，以其高效的性能和灵活的数据结构被广泛应用于缓存、会话管理、实时数据处理等场景。虽然 Redis 在单机模式下提供了极高的吞吐量和低延迟，但在实际生产环境中，单机 Redis 节点的使用面临着许多挑战。</p>
                </div>
                <div>
                    <img src="https://cdn.nlark.com/yuque/0/2025/png/21449790/1737169146721-c4235d2b-080e-421e-ba64-98c6cfec2f59.png" alt="Redis 高可用与集群" class="w-full h-auto rounded-lg shadow-lg">
                </div>
            </div>

            <div class="grid md:grid-cols-3 gap-6">
                <div class="card bg-white p-6 rounded-lg shadow-md">
                    <div class="text-blue-500 text-3xl mb-4"><i class="fas fa-exclamation-triangle"></i></div>
                    <h3 class="text-xl font-bold mb-3">单点故障</h3>
                    <p class="text-gray-600">在单机模式下，Redis 节点一旦发生故障，系统将无法提供服务，导致整个应用出现不可用的情况。</p>
                </div>
                <div class="card bg-white p-6 rounded-lg shadow-md">
                    <div class="text-blue-500 text-3xl mb-4"><i class="fas fa-expand"></i></div>
                    <h3 class="text-xl font-bold mb-3">可扩展性问题</h3>
                    <p class="text-gray-600">随着数据量的增长，单个 Redis 节点的内存限制会成为性能瓶颈，需要支持横向扩展。</p>
                </div>
                <div class="card bg-white p-6 rounded-lg shadow-md">
                    <div class="text-blue-500 text-3xl mb-4"><i class="fas fa-shield-alt"></i></div>
                    <h3 class="text-xl font-bold mb-3">高可用性需求</h3>
                    <p class="text-gray-600">如何确保 Redis 系统能够在故障发生时依然保持服务的可用性，成为了使用中的一大挑战。</p>
                </div>
            </div>
        </section>

        <!-- High Availability Section -->
        <section id="high-availability" class="mb-20">
            <div class="flex items-center mb-8">
                <div class="w-12 h-1 bg-blue-500 mr-4"></div>
                <h2 class="text-3xl font-bold">Redis 高可用性概述</h2>
            </div>
            
            <div class="grid md:grid-cols-2 gap-8 mb-12">
                <div>
                    <img src="https://cdn.nlark.com/yuque/0/2025/png/21449790/1737169180555-3aad0b2f-fd37-4007-9a99-2a8850e98dab.png" alt="Redis 高可用性" class="w-full h-auto rounded-lg shadow-lg">
                </div>
                <div>
                    <p class="text-lg mb-6">Redis 高可用性旨在确保 Redis 系统在面对硬件故障、网络故障、节点宕机等问题时，能够继续提供服务，保证数据的稳定性和一致性。在分布式系统中，高可用性是确保系统持续在线、无间断服务的核心要求之一。</p>
                    <p class="text-lg mb-6">为了实现高可用性，Redis 提供了几种机制，包括主从复制、Redis Sentinel 和故障转移等技术手段，这些机制能够保障 Redis 系统在节点故障时能够自动恢复，避免单点故障造成系统不可用。</p>
                </div>
            </div>

            <div class="mb-12">
                <h3 class="text-2xl font-bold mb-6 text-center">Redis 高可用性机制</h3>
                <div class="grid md:grid-cols-2 gap-8">
                    <div class="bg-white p-6 rounded-lg shadow-md">
                        <h4 class="text-xl font-bold mb-4 flex items-center">
                            <span class="bg-blue-100 text-blue-600 rounded-full w-8 h-8 flex items-center justify-center mr-3">1</span>
                            主从复制 (Master-Slave Replication)
                        </h4>
                        <div class="pl-11">
                            <p class="mb-4 highlight">主从复制是 Redis 中实现高可用性的基础机制。在主从复制架构中，Redis 会将一个主节点（Master）的数据复制到多个从节点（Slave）上。当主节点发生故障时，系统可以自动切换到从节点，确保服务的持续性。</p>
                            <div class="bg-gray-50 p-4 rounded-lg mb-4">
                                <h5 class="font-bold mb-2">工作原理：</h5>
                                <p>主节点将其所有写操作异步复制到从节点，从节点保持与主节点的数据同步。写入操作始终发生在主节点，而从节点主要用于读取操作，从而减轻主节点的压力。</p>
                            </div>
                            <div class="grid grid-cols-2 gap-4">
                                <div class="bg-green-50 p-3 rounded-lg">
                                    <h5 class="font-bold text-green-700 mb-1">优势</h5>
                                    <ul class="text-sm text-green-600">
                                        <li class="mb-1">负载均衡</li>
                                        <li>容错性</li>
                                    </ul>
                                </div>
                                <div class="bg-red-50 p-3 rounded-lg">
                                    <h5 class="font-bold text-red-700 mb-1">缺点</h5>
                                    <ul class="text-sm text-red-600">
                                        <li class="mb-1">异步复制延迟</li>
                                        <li>单点故障</li>
                                    </ul>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="bg-white p-6 rounded-lg shadow-md">
                        <h4 class="text-xl font-bold mb-4 flex items-center">
                            <span class="bg-blue-100 text-blue-600 rounded-full w-8 h-8 flex items-center justify-center mr-3">2</span>
                            Redis Sentinel
                        </h4>
                        <div class="pl-11">
                            <p class="mb-4 highlight">Redis Sentinel 是 Redis 提供的一个高可用性管理工具，专门用于监控 Redis 系统、进行故障检测和自动故障转移。Sentinel 主要用于解决 Redis 主从复制模式下的单点故障问题。</p>
                            <div class="bg-gray-50 p-4 rounded-lg mb-4">
                                <h5 class="font-bold mb-2">工作原理：</h5>
                                <ul class="list-disc pl-5">
                                    <li class="mb-1">故障检测：Sentinel 会定期监控 Redis 主从节点的健康状况。</li>
                                    <li class="mb-1">故障转移：在主节点故障的情况下，Sentinel 会自动将一个从节点提升为新的主节点。</li>
                                    <li>客户端重定向：Sentinel 会更新其状态信息，确保客户端能够连接到新的主节点。</li>
                                </ul>
                            </div>
                            <div class="grid grid-cols-2 gap-4">
                                <div class="bg-green-50 p-3 rounded-lg">
                                    <h5 class="font-bold text-green-700 mb-1">优势</h5>
                                    <ul class="text-sm text-green-600">
                                        <li class="mb-1">自动化故障转移</li>
                                        <li>监控与报警</li>
                                    </ul>
                                </div>
                                <div class="bg-red-50 p-3 rounded-lg">
                                    <h5 class="font-bold text-red-700 mb-1">缺点</h5>
                                    <ul class="text-sm text-red-600">
                                        <li class="mb-1">单点问题</li>
                                    </ul>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class="bg-blue-50 p-6 rounded-lg">
                <h3 class="text-xl font-bold mb-4 text-blue-700">Redis 高可用性的应用场景</h3>
                <div class="grid md:grid-cols-4 gap-4">
                    <div class="bg-white p-4 rounded-lg shadow-sm text-center">
                        <div class="text-blue-500 text-2xl mb-2"><i class="fas fa-database"></i></div>
                        <h4 class="font-bold">缓存系统</h4>
                    </div>
                    <div class="bg-white p-4 rounded-lg shadow-sm text-center">
                        <div class="text-blue-500 text-2xl mb-2"><i class="fas fa-users"></i></div>
                        <h4 class="font-bold">会话存储</h4>
                    </div>
                    <div class="bg-white p-4 rounded-lg shadow-sm text-center">
                        <div class="text-blue-500 text-2xl mb-2"><i class="fas fa-envelope"></i></div>
                        <h4 class="font-bold">消息队列</h4>
                    </div>
                    <div class="bg-white p-4 rounded-lg shadow-sm text-center">
                        <div class="text-blue-500 text-2xl mb-2"><i class="fas fa-bolt"></i></div>
                        <h4 class="font-bold">实时数据存储</h4>
                    </div>
                </div>
            </div>
        </section>

        <!-- Cluster Architecture Section -->
        <section id="cluster" class="mb-20">
            <div class="flex items-center mb-8">
                <div class="w-12 h-1 bg-blue-500 mr-4"></div>
                <h2 class="text-3xl font-bold">Redis 集群架构</h2>
            </div>
            
            <p class="text-lg mb-8">Redis 集群是 Redis 提供的一个分布式解决方案，用于实现大规模 Redis 部署。与传统的主从复制模式不同，Redis 集群不仅提供了高可用性，还支持数据的水平扩展，即数据自动分片和跨节点的负载均衡。通过 Redis 集群，用户能够将数据分散存储在多个 Redis 实例中，同时保证系统的可用性、性能和扩展性。</p>

            <div class="grid md:grid-cols-2 gap-8 mb-12">
                <div>
                    <h3 class="text-2xl font-bold mb-4">Redis 集群的工作原理</h3>
                    <p class="mb-4">Redis 集群的工作原理基于数据分片（Sharding）和复制（Replication）。整个集群由多个 Redis 节点组成，其中数据会根据一定的规则分布在各个节点上，每个节点处理一部分数据。</p>
                    
                    <div class="bg-white p-4 rounded-lg shadow-md mb-4">
                        <h4 class="font-bold mb-2 text-blue-600">数据分片</h4>
                        <p>Redis 集群通过哈希槽（hash slots）来分片。Redis 集群将所有的键（key）映射到 16384 个哈希槽中，每个节点负责处理部分哈希槽的数据。</p>
                    </div>
                    
                    <div class="bg-white p-4 rounded-lg shadow-md mb-4">
                        <h4 class="font-bold mb-2 text-blue-600">主从复制</h4>
                        <p>每个节点（包括主节点和从节点）都可能是集群的一部分。在 Redis 集群中，每个主节点可以有一个或多个从节点用于数据复制。</p>
                    </div>
                    
                    <div class="bg-white p-4 rounded-lg shadow-md">
                        <h4 class="font-bold mb-2 text-blue-600">故障转移</h4>
                        <p>如果某个主节点发生故障，集群会通过选举机制自动将某个从节点提升为主节点，保证数据的可用性。</p>
                    </div>
                </div>
                <div>
                    <div class="mermaid">
                        graph TD
                            A[Redis 集群] --> B[主节点1]
                            A --> C[主节点2]
                            A --> D[主节点3]
                            B --> E[从节点1]
                            B --> F[从节点2]
                            C --> G[从节点3]
                            D --> H[从节点4]
                    </div>
                </div>
            </div>

            <h3 class="text-2xl font-bold mb-6">Redis 集群的优缺点</h3>
            <div class="grid md:grid-cols-2 gap-6 mb-12">
                <div class="bg-green-50 p-6 rounded-lg">
                    <h4 class="text-xl font-bold mb-4 text-green-700 flex items-center">
                        <i class="fas fa-check-circle mr-2"></i> 优点
                    </h4>
                    <ul class="space-y-3">
                        <li class="flex items-start">
                            <span class="text-green-500 mr-2"><i class="fas fa-arrow-right"></i></span>
                            <span>水平扩展：通过数据分片，Redis 集群可以支持横向扩展，允许更多的节点加入集群</span>
                        </li>
                        <li class="flex items-start">
                            <span class="text-green-500 mr-2"><i class="fas fa-arrow-right"></i></span>
                            <span>高可用性：主从复制和自动故障转移机制确保了系统的高可用性</span>
                        </li>
                        <li class="flex items-start">
                            <span class="text-green-500 mr-2"><i class="fas fa-arrow-right"></i></span>
                            <span>高吞吐量：数据分片使得负载均衡成为可能，每个节点可以独立处理请求</span>
                        </li>
                    </ul>
                </div>
                <div class="bg-red-50 p-6 rounded-lg">
                    <h4 class="text-xl font-bold mb-4 text-red-700 flex items-center">
                        <i class="fas fa-exclamation-triangle mr-2"></i> 缺点
                    </h4>
                    <ul class="space-y-3">
                        <li class="flex items-start">
                            <span class="text-red-500 mr-2"><i class="fas fa-arrow-right"></i></span>
                            <span>复杂性：Redis 集群的配置和管理相对复杂</span>
                        </li>
                        <li class="flex items-start">
                            <span class="text-red-500 mr-2"><i class="fas fa-arrow-right"></i></span>
                            <span>单点故障依赖：整个集群仍然依赖于哈希槽分配的健康状态</span>
                        </li>
                    </ul>
                </div>
            </div>

            <h3 class="text-2xl font-bold mb-6">Redis 集群的应用场景</h3>
            <div class="grid md:grid-cols-4 gap-6">
                <div class="card bg-white p-6 rounded-lg shadow-md text-center">
                    <div class="text-blue-500 text-3xl mb-4"><i class="fas fa-server"></i></div>
                    <h4 class="font-bold mb-2">大规模缓存系统</h4>
                    <p class="text-sm text-gray-600">通过分片机制处理海量缓存数据</p>
                </div>
                <div class="card bg-white p-6 rounded-lg shadow-md text-center">
                    <div class="text-blue-500 text-3xl mb-4"><i class="fas fa-user-shield"></i></div>
                    <h4 class="font-bold mb-2">分布式会话管理</h4>
                    <p class="text-sm text-gray-600">提供可靠的高可用性解决方案</p>
                </div>
                <div class="card bg-white p-6 rounded-lg shadow-md text-center">
                    <div class="text-blue-500 text-3xl mb-4"><i class="fas fa-tasks"></i></div>
                    <h4 class="font-bold mb-2">大规模消息队列</h4>
                    <p class="text-sm text-gray-600">支持高效的消息队列系统</p>
                </div>
                <div class="card bg-white p-6 rounded-lg shadow-md text-center">
                    <div class="text-blue-500 text-3xl mb-4"><i class="fas fa-chart-line"></i></div>
                    <h4 class="font-bold mb-2">实时分析系统</h4>
                    <p class="text-sm text-gray-600">高效存储和查询实时数据</p>
                </div>
            </div>
        </section>

        <!-- Comparison Section -->
        <section id="compare" class="mb-20">
            <div class="flex items-center mb-8">
                <div class="w-12 h-1 bg-blue-500 mr-4"></div>
                <h2 class="text-3xl font-bold">高可用与集群的对比</h2>
            </div>

            <div class="bg-white rounded-lg shadow-md overflow-hidden mb-12">
                <table class="min-w-full divide-y divide-gray-200">
                    <thead class="bg-gray-50">
                        <tr>
                            <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">对比项</th>
                            <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">高可用性 (HA)</th>
                            <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">集群 (Cluster)</th>
                        </tr>
                    </thead>
                    <tbody class="bg-white divide-y divide-gray-200">
                        <tr>
                            <td class="px-6 py-4 whitespace-nowrap font-medium">定义</td>
                            <td class="px-6 py-4">系统在任何时间点都能保持可用</td>
                            <td class="px-6 py-4">多个计算机联合起来共同提供服务</td>
                        </tr>
                        <tr class="bg-gray-50">
                            <td class="px-6 py-4 whitespace-nowrap font-medium">目标</td>
                            <td class="px-6 py-4">保证服务的持续可用性</td>
                            <td class="px-6 py-4">提升系统的性能和容量</td>
                        </tr>
                        <tr>
                            <td class="px-6 py-4 whitespace-nowrap font-medium">架构设计</td>
                            <td class="px-6 py-4">冗余设计，如主从复制、故障转移</td>
                            <td class="px-6 py-4">多个节点通过分布式协议连接</td>
                        </tr>
                        <tr class="bg-gray-50">
                            <td class="px-6 py-4 whitespace-nowrap font-medium">容错机制</td>
                            <td class="px-6 py-4">故障检测和快速恢复</td>
                            <td class="px-6 py-4">数据复制、分片与重分布</td>
                        </tr>
                        <tr>
                            <td class="px-6 py-4 whitespace-nowrap font-medium">扩展性</td>
                            <td class="px-6 py-4">通常较弱，注重稳定性</td>
                            <td class="px-6 py-4">非常强，支持水平扩展</td>
                        </tr>
                        <tr class="bg-gray-50">
                            <td class="px-6 py-4 whitespace-nowrap font-medium">适用场景</td>
                            <td class="px-6 py-4">对服务持续可用性有严格要求的系统</td>
                            <td class="px-6 py-4">需要处理大量数据和高并发请求的系统</td>
                        </tr>
                    </tbody>
                </table>
            </div>

            <div class="grid md:grid-cols-2 gap-8">
                <div>
                    <h3 class="text-2xl font-bold mb-4">Redis 高可用架构示例</h3>
                    <div class="mermaid">
                        graph TD
                            Client --> Sentinel1
                            Client --> Sentinel2
                            Client --> Sentinel3
                            Sentinel1 --> Master
                            Sentinel2 --> Master
                            Sentinel3 --> Master
                            Master --> Slave1
                            Master --> Slave2
                    </div>
                </div>
                <div>
                    <h3 class="text-2xl font-bold mb-4">Redis 集群架构示例</h3>
                    <div class="mermaid">
                        graph TD
                            Client --> Node1
                            Client --> Node2
                            Client --> Node3
                            Node1 -->|哈希槽 0-5460| Data1
                            Node2 -->|哈希槽 5461-10922| Data2
                            Node3 -->|哈希槽 10923-16383| Data3
                            Node1 --> Replica1
                            Node2 --> Replica2
                            Node3 --> Replica3
                    </div>
                </div>
            </div>
        </section>

        <!-- FAQ Section -->
        <section id="faq" class="mb-20">
            <div class="flex items-center mb-8">
                <div class="w-12 h-1 bg-blue-500 mr-4"></div>
                <h2 class="text-3xl font-bold">常见问题与解决方案</h2>
            </div>

            <div class="space-y-6">
                <div class="card bg-white p-6 rounded-lg shadow-md">
                    <h3 class="text-xl font-bold mb-3 flex items-center">
                        <span class="text-blue-500 mr-3"><i class="fas fa-question-circle"></i></span>
                        网络分区与数据不一致
                    </h3>
                    <div class="pl-9">
                        <p class="mb-3 highlight">当 Redis 集群中的一部分节点无法与其他节点通信时，就会出现网络分区。此时，部分节点会无法同步数据，可能会导致数据丢失或者数据不一致。</p>
                        <h4 class="font-bold mb-2 text-blue-600">解决方案：</h4>
                        <ul class="list-disc pl-5 space-y-2">
                            <li>启用防脑裂（split-brain）机制</li>
                            <li>增加集群的副本数</li>
                            <li>使用 Sentinel 或者 Keepalived</li>
                        </ul>
                    </div>
                </div>

                <div class="card bg-white p-6 rounded-lg shadow-md">
                    <h3 class="text-xl font-bold mb-3 flex items-center">
                        <span class="text-blue-500 mr-3"><i class="fas fa-question-circle"></i></span>
                        节点失效与自动故障转移失败
                    </h3>
                    <div class="pl-9">
                        <p class="mb-3 highlight">在 Redis 集群中，节点可能会出现故障，导致主节点不能提供服务。尽管 Redis 集群支持自动故障转移，但在某些情况下可能会失败。</p>
                        <h4 class="font-bold mb-2 text-blue-600">解决方案：</h4>
                        <ul class="list-disc pl-5 space-y-2">
                            <li>监控与告警</li>
                            <li>检查节点的网络连通性</li>
                            <li>增加主从副本数</li>
                        </ul>
                    </div>
                </div>

                <div class="card bg-white p-6 rounded-lg shadow-md">
                    <h3 class="text-xl font-bold mb-3 flex items-center">
                        <span class="text-blue-500 mr-3"><i class="fas fa-question-circle"></i></span>
                        数据丢失与持久化问题
                    </h3>
                    <div class="pl-9">
                        <p class="mb-3 highlight">Redis 集群通过主从复制来保持数据一致性，但在某些情况下，尤其是在主节点发生故障或重启时，可能会导致某些尚未同步到从节点的数据丢失。</p>
                        <h4 class="font-bold mb-2 text-blue-600">解决方案：</h4>
                        <ul class="list-disc pl-5 space-y-2">
                            <li>开启 AOF 持久化</li>
                            <li>合理配置 RDB 和 AOF</li>
                            <li>故障恢复策略</li>
                        </ul>
                    </div>
                </div>

                <div class="card bg-white p-6 rounded-lg shadow-md">
                    <h3 class="text-xl font-bold mb-3 flex items-center">
                        <span class="text-blue-500 mr-3"><i class="fas fa-question-circle"></i></span>
                        资源消耗过高与性能瓶颈
                    </h3>
                    <div class="pl-9">
                        <p class="mb-3 highlight">在 Redis 集群中，资源消耗过高可能会导致性能瓶颈，尤其是在高并发场景下，Redis 集群的 CPU、内存或网络带宽可能会成为限制因素。</p>
                        <h4 class="font-bold mb-2 text-blue-600">解决方案：</h4>
                        <ul class="list-disc pl-5 space-y-2">
                            <li>优化 Redis 配置</li>
                            <li>使用高性能硬件</li>
                            <li>使用 Redis 集群的分片机制</li>
                            <li>合理配置连接池</li>
                        </ul>
                    </div>
                </div>
            </div>
        </section>
    </div>

    <!-- Footer -->
    <footer class="bg-gray-900 text-white py-12">
        <div class="container mx-auto px-6">
            <div class="text-center">
                <h3 class="text-xl font-bold mb-4">技术小馆</h3>
                <p class="text-gray-400">探索技术前沿，分享知识经验</p>
                <div class="mt-4">
                    <a href="http://www.yuque.com/jtostring" class="text-blue-400 hover:text-blue-300 transition">http://www.yuque.com/jtostring</a>
                </div>
                <div class="flex justify-center space-x-6 mt-8">
                    <a href="#" class="text-gray-400 hover:text-white transition"><i class="fab fa-github text-xl"></i></a>
                    <a href="#" class="text-gray-400 hover:text-white transition"><i class="fab fa-twitter text-xl"></i></a>
                    <a href="#" class="text-gray-400 hover:text-white transition"><i class="fab fa-weixin text-xl"></i></a>
                </div>
            </div>
        </div>
    </footer>

    <script>
        mermaid.initialize({
            startOnLoad: true,
            theme: 'default',
            flowchart: {
                useMaxWidth: true,
                htmlLabels: true,
                curve: 'basis'
            }
        });
    </script>
</body>
</html>
```